﻿Public Class frmCadastroVagaDeTrabalho

    'instancias de classes de negocio
    Private vag As New _VagaTrabalho
    Private emp As New _empregador
    Private mot As New _motivo
    Private cargo As New _cargoFuncao

    'Instancias de formulários
    Private frmEmp As frmConsultaEmpregador
    Private frmCargo As frmConsultaCargoFuncao
    Private frmBaixa As frmBaixaVaga

    'função Limpa formlário de cadastro de vaga
    Private Sub limpaTelaVaga()
        txtIdVagaDeTrabalho.Text = ""
        txtIdEmpregador.Text = ""
        txtNmEmpresa.Text = ""
        txtIdCargoFuncao.Text = ""
        txtDsCargoFuncao.Text = ""
        txtDtCadastro.Text = Now.Date
        txtAtivdades.Text = ""
        txtQtdeVagas.Text = ""
        txtInfoRecrutamento.Text = ""
        chkPNE.Checked = 0
        txtDsPNE.Text = ""

    End Sub

    'metodo relaciona View com classe _VagadeTrabalho
    Private Sub getVagasDetrabalho()
        With vag
  
            txtIdVagaDeTrabalho.Text = .idVagaDeTrabalho
            txtIdEmpregador.Text = .idEmpregador
            txtNmEmpresa.Text = .nmEmpresa
            txtIdCargoFuncao.Text = .idCargoFuncao
            txtDsCargoFuncao.Text = .dsCargo
            txtDtCadastro.Text = .dtCadastro
            txtAtivdades.Text = .dsAtivBenReq
            txtQtdeVagas.Text = .qtVagas
            txtInfoRecrutamento.Text = .dsInfRecrutador
            chkPNE.Checked = .stPNE
            txtDsPNE.Text = .dsPNE
        End With

    End Sub
    'metodo relaciona View com classe _VagadeTrabalho
    Private Sub setVagaDeTrabalho()
        With vag

            '.idVagaDeTrabalho = txtIdVagaDeTrabalho.Text
            .idEmpregador = txtIdEmpregador.Text
            .idCargoFuncao = txtIdCargoFuncao.Text
            .dtCadastro = txtDtCadastro.Text
            .dsAtivBenReq = txtAtivdades.Text
            .qtVagas = txtQtdeVagas.Text
            .dsInfRecrutador = txtInfoRecrutamento.Text
            .stPNE = chkPNE.Checked
            .dsPNE = txtDsPNE.Text
        End With

    End Sub

    Private Sub btnConsultaEmpregador_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnConsultaEmpregador.Click, btnConsultaEmpresa.Click
        frmEmp = New frmConsultaEmpregador
        If frmEmp.ShowDialog = Windows.Forms.DialogResult.OK Then
            emp.consultaEmpregadorPorId(frmEmp.idEmpregador)
            txtIdEmpregador.Text = frmEmp.idEmpregador
            txtNmEmpresa.Text = emp.nmEmpresa
        End If
    End Sub


    Private Sub btnConsultaCargoFuncao_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim j As New frmConsultaCargoFuncao
        If j.ShowDialog() = Windows.Forms.DialogResult.OK Then
            txtIdCargoFuncao.Text = j.idCagoFuncao
            txtDsCargoFuncao.Text = j.dsCargoFuncao
        End If
    End Sub

    Private Sub mudaCorTextBoxAoReceberFoco(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtQtdeVagas.Enter, txtInfoRecrutamento.Enter, txtDsPNE.Enter, txtDsCargoFuncao.Enter, txtAtivdades.Enter, ToolStrip1.Enter, chkPNE.Enter, txtIdVagaDeTrabalho.Enter, txtIdEmpregador.Enter, txtIdCargoFuncao.Enter, txtNmEmpresa.Enter

        Dim c As Control = DirectCast(sender, Control)
        c.BackColor = Color.LightBlue

    End Sub

    Private Sub mudaCorTextBoxAoSairDoFoco(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtQtdeVagas.Leave, txtInfoRecrutamento.Leave, txtDsPNE.Leave, txtDsCargoFuncao.Leave, txtAtivdades.Leave, ToolStrip1.Leave, chkPNE.Leave, txtIdVagaDeTrabalho.Leave, txtIdEmpregador.Leave, txtIdCargoFuncao.Leave, txtNmEmpresa.Leave
        Dim c As Control = DirectCast(sender, Control)
        c.BackColor = Color.White
    End Sub
    Private Sub preenchComboMotivo()
        '  cmbMotivo.DataSource = mot.consultaMotivo.Tables("dataSet")
        '  cmbMotivo.ValueMember = "O_ID_MOTIVO"
        '  cmbMotivo.DisplayMember = "O_DS_MOTIVO"


    End Sub
    Private Sub frmCadastroVagaDeTrabalho_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        txtDtCadastro.Text = Now.Date
        '        txtDataBaixa.Text = Now.Date
        preenchComboMotivo()
        dgvEncaminhamento.AutoGenerateColumns = False
    End Sub

    Private Sub btnConsultar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnConsultar.Click
        Dim j As New frmConsultaVagaDeTrabalho

        If j.ShowDialog() = Windows.Forms.DialogResult.OK Then
            limpaTelaVaga()
            vag.consultaVagaPorId(j.idVaga)
            getVagasDetrabalho()
        End If
    End Sub

    Private Sub btnInserir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnInserir.Click
        If txtQtdeVagas.Text = String.Empty Then
            MsgBox("Preencha a quantidade de vagas disponiveis para esta vaga")
            Exit Sub
        End If
        setVagaDeTrabalho()
        txtIdVagaDeTrabalho.Text = vag.insereVagaDeTrabalho()
        MsgBox("Vaga inserida com sucesso")

    End Sub

    Private Sub btnImprimir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnImprimir.Click
        vag.geraXmlVagasDeTrabalho()
        Dim j As New frmRptVagasAtivas
        j.ShowDialog()
    End Sub

    Private Sub btnLimparTela_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnLimparTela.Click
        limpaTelaVaga()
    End Sub

    Private Sub btnAlterar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAlterar.Click
        setVagaDeTrabalho()
        vag.alteraVagaDeTrabalho(txtIdVagaDeTrabalho.Text)
        MsgBox("Dados da Vaga alterados com sucesso!")

    End Sub

    Private Sub btnAtualizar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
        If Not txtIdVagaDeTrabalho.Text = "" Then
            dgvEncaminhamento.DataSource = vag.consultaEncaminhamentosPorIdVaga(txtIdVagaDeTrabalho.Text).Tables("dataSet")
        Else
            MsgBox("Selecione uma vaga")
        End If

    End Sub

  

    Private Sub btnBaixarvagaSelecionada_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBaixarvagaSelecionada.Click

        If Not txtIdVagaDeTrabalho.Text = String.Empty Then
            frmBaixa = New frmBaixaVaga(txtIdVagaDeTrabalho.Text)
            frmBaixa.ShowDialog()


        End If



    End Sub


End Class